package com.zjdiepu.www.ibiz.file;

import java.io.File;
import java.io.IOException;
import java.util.zip.ZipOutputStream;


/**
 * 项目名称：dpqc-parent-manager-file <br/> 
 * 类名称：IZipService <br/>  
 * 类描述：文件解压缩<br/>    
 * 创建人：xiongxiaotun <br/> 
 * 创建时间：2017年4月14日 上午11:17:26  <br/>   
 * 修改人：xiongxiaotun <br/> 
 * 修改时间：2017年4月14日 上午11:17:26   <br/>  
 * 修改备注：    <br/> 
 * @version V1.0   <br/>
 */
public interface IZipService {
	
	/**
	 * @author xiongxiaotun <br/>
	 * @Title: compress  <br/>
	 * @Description: 打包单个或多文件方法  <br/>
	 * @param zipPath 压缩后的文件路径 
	 * @param srcPathName 要压缩的文件路径 
	 * @version V1.0  <br/>
	 */
    void pack(String zipPath, String... srcPathName);
    
    /**
     * @author xiongxiaotun <br/>
     * @Title: compress  <br/>
     * @Description: 打包一个文件或目录  <br/>
     * @param file
     * @param out
     * @param basedir
     * @throws IOException
     * @version V1.0  <br/>
     */
    void pack(File file, ZipOutputStream out, String basedir) throws IOException;
    
    /**
     * @author xiongxiaotun <br/>
     * @Title: packDirectory  <br/>
     * @Description: 打包一个目录  <br/>
     * @param dir
     * @param out
     * @param basedir
     * @throws IOException
     * @version V1.0  <br/>
     */
    void packDirectory(File dir, ZipOutputStream out, String basedir) throws IOException ;
    
    /**
     * @author xiongxiaotun <br/>
     * @Title: packFile  <br/>
     * @Description: 打包一个文件  <br/>
     * @param file
     * @param out
     * @param basedir
     * @throws IOException
     * @version V1.0  <br/>
     */
    void packFile(File file, ZipOutputStream out, String basedir)  throws IOException;
    /**
     * @author xiongxiaotun <br/>
     * @Title: dePack  <br/>
     * @Description: 解压 <br/>
     * @param sourceFile
     * @param destDir
     * @version V1.0  <br/>
     */
    void dePack(String sourceFile,String destDir);
    /**
     * @author xiongxiaotun <br/>
     * @Title: dePackAction  <br/>
     * @Description: 解压 <br/>
     * @param sourceZip
     * @param destDir
     * @throws IOException
     * @version V1.0  <br/>
     */
    void dePackAction(String sourceZip,String destDir) throws IOException;

}
